扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:高云飞 孙斌 王宁 来源:计算机与信息技术 2007年10月16日
关键字:
while(1) { uIsRead=f.Read(bVal,ChunkSize); if(uIsRead==0) break; rgsabound[0].cElements =uIsRead; rgsabound[0].lLbound = 0; psa = SafeArrayCreate(VT_UI1,1,rgsabound); ///创建SAFEARRAY对象 for(long index=0;index<UISREAD;INDEX++) SafeArrayPutElement(psa,&index,&bVal[index]); varChunk.vt = VT_ARRAY|VT_UI1; varChunk.parray = psa; //加入BLOB类型的数据 m_pRecordset->Fields->GetItem("data")->AppendChunk(varChunk); ::VariantClear(&varChunk); ::SafeArrayDestroyData( psa); if(uIsRead<<CHUNKSIZE) break; } |
long lBlobSize = m_pRecordset->Fields-> Item["data"] ->ActualSize; while(lBlobSize>0) { lIsRead= lBlobSize >=ChunkSize? ChunkSize: lBlobSize; //从字段data中获取一个数据包 varChunk = m_pRecordset->Fields->Item["data"]->GetChunk(lIsRead); for(index=0;index<LISREAD;INDEX++) ::SafeArrayGetElement(varChunk.parray,&index,buf+index); //将数据包写入文件 f.Write(buf,lIsRead); lBlobSize -=lIsRead; } |
婵″倹鐏夐幃銊╂姜鐢瓕鎻╅崚鍥╂畱閹厖绨$憴顤廡妫板棗鐓欓張鈧弬棰侀獓閸濅椒绗岄幎鈧張顖欎繆閹垽绱濋柇锝勭疄鐠併垽妲勯懛鎶姐€婄純鎴炲Η閺堫垶鍋栨禒璺虹殺閺勵垱鍋嶉惃鍕付娴f娊鈧柨绶炴稊瀣╃閵嗭拷